package com.zzh.partnersys.search.entity;

import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

/**
 * ES 用户文档实体
 *
 * @author zzh
 */
@Data
public class UserDocument implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 用户唯一ID（关联MySQL）
     */
    private Long id;

    /**
     * 昵称（展示+可选搜索）
     */
    private String username;

    /**
     * 登录账户（手机号，唯一标识，不搜索）
     */
    private String userAccount;

    /**
     * 用户标签（核心匹配字段，适配编辑距离）
     */
    private List<String> tags;

    /**
     * 头像（仅展示）
     */
    private String avatarUrl;

    /**
     * 性别（展示字段）
     */
    private Integer gender;

    /**
     * 角色（0普通/1管理员，筛选字段）
     */
    private Integer userRole;

    /**
     * 个人简介（搜索+匹配字段）
     */
    private String personalProfile;

    /**
     * 账号状态（0正常，筛选字段）
     */
    private Integer userStatus;

    /**
     * 逻辑删除（筛选字段）
     */
    private Integer isDelete;
}

